Derivation of verification rules for C from operational definitions
نویسنده
چکیده
While a low-level, operational definition of a language’s semantics is a straightforward way of specifying the behaviour of programs written in that language, it is not necessarily very suitable for formal activities such as program verification. This is clearly the case with languages such as C, where the language definition is complicated by much tedious detail. However, the work described here demonstrates that a necessarily complicated semantics for C can still be used as the basis for the generation of “axiomatic” style rules. These can then be used to support verification work in a way that is both familiar and not overly complex.
منابع مشابه
Tactic-Based Optimized Compilation of Functional Programs
Within a framework of correct code-generation from HOLspecifications, we present a particular instance concerned with the optimized compilation of a lazy language (called MiniHaskell) to a strict language (called MiniML). Both languages are defined as shallow embeddings into denotational semantics based on Scott’s cpo’s, leading to a derivation of the corresponding operational semantics in orde...
متن کاملProof Systems for Inductive Reasoning in the Logic of Bunched Implications
We report on our early progress in developing suitable frameworks for inductive reasoning in separation logic and related logics for low-level program verification, following the approach of our previous work on sequent proof systems for first-order logic with inductive definitions. We extend a first-order predicate version of the logic of bunched implications, BI — of which separation logic is...
متن کاملDerivation of Veriication Rules for C from Operational Deenitions
While a low-level, operational deenition of a language's semantics is a straightforward way of specifying the behaviour of programs written in that language, it is not necessarily very suitable for formal activities such as program veriication. This is clearly the case with languages such as C, where the language deenition is complicated by much tedious detail. However, the work described here ...
متن کاملExtending the Qualitative Trajectory Calculus Based on the Concept of Accessibility of Moving Objects in the Paths
Qualitative spatial representation and reasoning are among the important capabilities in intelligent geospatial information system development. Although a large contribution to the study of moving objects has been attributed to the quantitative use and analysis of data, such calculations are ineffective when there is little inaccurate data on position and geometry or when explicitly explaining ...
متن کاملOCamllight in Ott
OCamllight key points •Written in Ott • Faithful to Objective Caml (very nearly) • Type soundness proof mechanized in HOL (Coq and Isabelle/HOL definitions generated too) • Operational semantics validated on test programs • Small-step operational semantics (131 rules) • Type system (179 rules, below) • definitions: – variant data types (e.g., type t = I of int | C of char), – record types (e.g....
متن کامل